﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Collections.Generic;

namespace Content
{
    public class WebColors
    {
        public string ColorName { get; set; }
        public uint ColorCode { get; set; }
        public static Color Aliceblue = new WebColors{ColorName = "Aliceblue", ColorCode = 0xFFF0F8FF}.ToColor();
        public static Color AntiqueWhite = new WebColors{ColorName = "AntiqueWhite", ColorCode = 0xFFFAEBD7}.ToColor();
        public static Color Aqua = new WebColors{ColorName = "Aqua", ColorCode = 0xFF00FFFF}.ToColor();
        public static Color Aquamarine = new WebColors{ColorName = "Aquamarine", ColorCode = 0xFF7FFFD4}.ToColor();
        public static Color Azure = new WebColors{ColorName = "Azure", ColorCode = 0xFFF0FFFF}.ToColor();
        public static Color Beige = new WebColors{ColorName = "Beige", ColorCode = 0xFFF5F5DC}.ToColor();
        public static Color Bisque = new WebColors{ColorName = "Bisque", ColorCode = 0xFFFFE4C4}.ToColor();
        public static Color Black = new WebColors{ColorName = "Black", ColorCode = 0xFF000000}.ToColor();
        public static Color BlanchedAlmond = new WebColors{ColorName = "BlanchedAlmond", ColorCode = 0xFFFFEBCD}.ToColor();
        public static Color Blue = new WebColors{ColorName = "Blue", ColorCode = 0xFF0000FF}.ToColor();
        public static Color BlueViolet = new WebColors{ColorName = "BlueViolet", ColorCode = 0xFF8A2BE2}.ToColor();
        public static Color Brown = new WebColors{ColorName = "Brown", ColorCode = 0xFFA52A2A}.ToColor();
        public static Color BurlyWood = new WebColors{ColorName = "BurlyWood", ColorCode = 0xFFDEB887}.ToColor();
        public static Color CadetBlue = new WebColors{ColorName = "CadetBlue", ColorCode = 0xFF5F9EA0}.ToColor();
        public static Color Chartreuse = new WebColors{ColorName = "Chartreuse", ColorCode = 0xFF7FFF00}.ToColor();
        public static Color Chocolate = new WebColors{ColorName = "Chocolate", ColorCode = 0xFFD2691E}.ToColor();
        public static Color Coral = new WebColors{ColorName = "Coral", ColorCode = 0xFFFF7F50}.ToColor();
        public static Color CornflowerBlue = new WebColors{ColorName = "CornflowerBlue", ColorCode = 0xFF6495ED}.ToColor();
        public static Color Cornsilk = new WebColors{ColorName = "Cornsilk", ColorCode = 0xFFFFF8DC}.ToColor();
        public static Color Crimson = new WebColors{ColorName = "Crimson", ColorCode = 0xFFDC143C}.ToColor();
        public static Color Cyan = new WebColors{ColorName = "Cyan", ColorCode = 0xFF00FFFF}.ToColor();
        public static Color DarkBlue = new WebColors{ColorName = "DarkBlue", ColorCode = 0xFF00008B}.ToColor();
        public static Color DarkCyan = new WebColors{ColorName = "DarkCyan", ColorCode = 0xFF008B8B}.ToColor();
        public static Color DarkGoldenrod = new WebColors{ColorName = "DarkGoldenrod", ColorCode = 0xFFB8860B}.ToColor();
        public static Color DarkGray = new WebColors{ColorName = "DarkGray", ColorCode = 0xFFA9A9A9}.ToColor();
        public static Color DarkGreen = new WebColors{ColorName = "DarkGreen", ColorCode = 0xFF006400}.ToColor();
        public static Color DarkKhaki = new WebColors{ColorName = "DarkKhaki", ColorCode = 0xFFBDB76B}.ToColor();
        public static Color DarkMagenta = new WebColors{ColorName = "DarkMagenta", ColorCode = 0xFF8B008B}.ToColor();
        public static Color DarkOliveGreen = new WebColors{ColorName = "DarkOliveGreen", ColorCode = 0xFF556B2F}.ToColor();
        public static Color DarkOrange = new WebColors{ColorName = "DarkOrange", ColorCode = 0xFFFF8C00}.ToColor();
        public static Color DarkOrchid = new WebColors{ColorName = "DarkOrchid", ColorCode = 0xFF9932CC}.ToColor();
        public static Color DarkRed= new WebColors{ColorName = "DarkRed", ColorCode = 0xFF8B0000}.ToColor();
        public static Color DarkSalmon= new WebColors{ColorName = "DarkSalmon", ColorCode = 0xFFE9967A}.ToColor();
        public static Color DarkSeaGreen= new WebColors{ColorName = "DarkSeaGreen", ColorCode = 0xFF8FBC8F}.ToColor();
        public static Color DarkSlateBlue= new WebColors{ColorName = "DarkSlateBlue", ColorCode = 0xFF483D8B}.ToColor();
        public static Color DarkSlateGray= new WebColors{ColorName = "DarkSlateGray", ColorCode = 0xFF2F4F4F}.ToColor();
        public static Color DarkTurquoise= new WebColors{ColorName = "DarkTurquoise", ColorCode = 0xFF00CED1}.ToColor();
        public static Color DarkViolet= new WebColors{ColorName = "DarkViolet", ColorCode = 0xFF9400D3}.ToColor();
        public static Color DeepPink= new WebColors{ColorName = "DeepPink", ColorCode = 0xFFFF1493}.ToColor();
        public static Color DeepSkyBlue= new WebColors{ColorName = "DeepSkyBlue", ColorCode = 0xFF00BFFF}.ToColor();
        public static Color DimGray= new WebColors{ColorName = "DimGray", ColorCode = 0xFF696969}.ToColor();
        public static Color DodgerBlue= new WebColors{ColorName = "DodgerBlue", ColorCode = 0xFF1E90FF}.ToColor();
        public static Color Firebrick= new WebColors{ColorName = "Firebrick", ColorCode = 0xFFB22222}.ToColor();
        public static Color FloralWhite= new WebColors{ColorName = "FloralWhite", ColorCode = 0xFFFFFAF0}.ToColor();
        public static Color ForestGreen= new WebColors{ColorName = "ForestGreen", ColorCode = 0xFF228B22}.ToColor();
        public static Color Fuchsia= new WebColors{ColorName = "Fuchsia", ColorCode = 0xFFFF00FF}.ToColor();
        public static Color Gainsboro= new WebColors{ColorName = "Gainsboro", ColorCode = 0xFFDCDCDC}.ToColor();
        public static Color GhostWhite= new WebColors{ColorName = "GhostWhite", ColorCode = 0xFFF8F8FF}.ToColor();
        public static Color Gold= new WebColors{ColorName = "Gold", ColorCode = 0xFFFFD700}.ToColor();
        public static Color Goldenrod= new WebColors{ColorName = "Goldenrod", ColorCode = 0xFFDAA520}.ToColor();
        public static Color Gray= new WebColors{ColorName = "Gray", ColorCode = 0xFF808080}.ToColor();
        public static Color Green= new WebColors{ColorName = "Green", ColorCode = 0xFF008000}.ToColor();
        public static Color GreenYellow= new WebColors{ColorName = "GreenYellow", ColorCode = 0xFFADFF2F}.ToColor();
        public static Color Honeydew= new WebColors{ColorName = "Honeydew", ColorCode = 0xFFF0FFF0}.ToColor();
        public static Color HotPink= new WebColors{ColorName = "HotPink", ColorCode = 0xFFFF69B4}.ToColor();
        public static Color IndianRed= new WebColors{ColorName = "IndianRed", ColorCode = 0xFFCD5C5C}.ToColor();
        public static Color Indigo= new WebColors{ColorName = "Indigo", ColorCode = 0xFF4B0082}.ToColor();
        public static Color Ivory= new WebColors{ColorName = "Ivory", ColorCode = 0xFFFFFFF0}.ToColor();
        public static Color Khaki= new WebColors{ColorName = "Khaki", ColorCode = 0xFFF0E68C}.ToColor();
        public static Color Lavender= new WebColors{ColorName = "Lavender", ColorCode = 0xFFE6E6FA}.ToColor();
        public static Color LavenderBlush= new WebColors{ColorName = "LavenderBlush", ColorCode = 0xFFFFF0F5}.ToColor();
        public static Color LawnGreen= new WebColors{ColorName = "LawnGreen", ColorCode = 0xFF7CFC00}.ToColor();
        public static Color LemonChiffon= new WebColors{ColorName = "LemonChiffon", ColorCode = 0xFFFFFACD}.ToColor();
        public static Color LightBlue= new WebColors{ColorName = "LightBlue", ColorCode = 0xFFADD8E6}.ToColor();
        public static Color LightCoral= new WebColors{ColorName = "LightCoral", ColorCode = 0xFFF08080}.ToColor();
        public static Color LightCyan= new WebColors{ColorName = "LightCyan", ColorCode = 0xFFE0FFFF}.ToColor();
        public static Color LightGoldenrodYellow= new WebColors{ColorName = "LightGoldenrodYellow", ColorCode = 0xFFFAFAD2}.ToColor();
        public static Color LightGray= new WebColors{ColorName = "LightGray", ColorCode = 0xFFD3D3D3}.ToColor();
        public static Color LightGreen= new WebColors{ColorName = "LightGreen", ColorCode = 0xFF90EE90}.ToColor();
        public static Color LightPink= new WebColors{ColorName = "LightPink", ColorCode = 0xFFFFB6C1}.ToColor();
        public static Color LightSalmon= new WebColors{ColorName = "LightSalmon", ColorCode = 0xFFFFA07A}.ToColor();
        public static Color LightSeaGreen= new WebColors{ColorName = "LightSeaGreen", ColorCode = 0xFF20B2AA}.ToColor();
        public static Color LightSkyBlue= new WebColors{ColorName = "LightSkyBlue", ColorCode = 0xFF87CEFA}.ToColor();
        public static Color LightSlateGray= new WebColors{ColorName = "LightSlateGray", ColorCode = 0xFF778899}.ToColor();
        public static Color LightSteelBlue= new WebColors{ColorName = "LightSteelBlue", ColorCode = 0xFFB0C4DE}.ToColor();
        public static Color LightYellow= new WebColors{ColorName = "LightYellow", ColorCode = 0xFFFFFFE0}.ToColor();
        public static Color Lime= new WebColors{ColorName = "Lime", ColorCode = 0xFF00FF00}.ToColor();
        public static Color LimeGreen = new WebColors{ColorName = "LimeGreen", ColorCode = 0xFF32CD32}.ToColor();
        public static Color Linen = new WebColors{ColorName = "Linen", ColorCode = 0xFFFAF0E6}.ToColor();
        public static Color Magenta = new WebColors{ColorName = "Magenta", ColorCode = 0xFFFF00FF}.ToColor();
        public static Color Maroon = new WebColors{ColorName = "Maroon", ColorCode = 0xFF800000}.ToColor();
        public static Color MediumAquamarine = new WebColors{ColorName = "MediumAquamarine", ColorCode = 0xFF66CDAA}.ToColor();
        public static Color MediumBlue = new WebColors{ColorName = "MediumBlue", ColorCode = 0xFF0000CD}.ToColor();
        public static Color MediumOrchid = new WebColors{ColorName = "MediumOrchid", ColorCode = 0xFFBA55D3}.ToColor();
        public static Color MediumPurple = new WebColors{ColorName = "MediumPurple", ColorCode = 0xFF9370DB}.ToColor();
        public static Color MediumSeaGreen = new WebColors{ColorName = "MediumSeaGreen", ColorCode = 0xFF3CB371}.ToColor();
        public static Color MediumSlateBlue = new WebColors{ColorName = "MediumSlateBlue", ColorCode = 0xFF7B68EE}.ToColor();
        public static Color MediumSpringGreen = new WebColors{ColorName = "MediumSpringGreen", ColorCode = 0xFF00FA9A}.ToColor();
        public static Color MediumTurquoise = new WebColors{ColorName = "MediumTurquoise", ColorCode = 0xFF48D1CC}.ToColor();
        public static Color MediumVioletRed = new WebColors{ColorName = "MediumVioletRed", ColorCode = 0xFFC71585}.ToColor();
        public static Color MidnightBlue = new WebColors{ColorName = "MidnightBlue", ColorCode = 0xFF191970}.ToColor();
        public static Color MintCream = new WebColors{ColorName = "MintCream", ColorCode = 0xFFF5FFFA}.ToColor();
        public static Color MistyRose = new WebColors{ColorName = "MistyRose", ColorCode = 0xFFFFE4E1}.ToColor();
        public static Color Moccasin = new WebColors{ColorName = "Moccasin", ColorCode = 0xFFFFE4B5}.ToColor();
        public static Color NavajoWhite = new WebColors{ColorName = "NavajoWhite", ColorCode = 0xFFFFDEAD}.ToColor();
        public static Color Navy = new WebColors{ColorName = "Navy", ColorCode = 0xFF000080}.ToColor();
        public static Color OldLace = new WebColors{ColorName = "OldLace", ColorCode = 0xFFFDF5E6}.ToColor();
        public static Color Olive = new WebColors{ColorName = "Olive", ColorCode = 0xFF808000}.ToColor();
        public static Color OliveDrab = new WebColors{ColorName = "OliveDrab", ColorCode = 0xFF6B8E23}.ToColor();
        public static Color Orange = new WebColors{ColorName = "Orange", ColorCode = 0xFFFFA500}.ToColor();
        public static Color OrangeRed = new WebColors{ColorName = "OrangeRed", ColorCode = 0xFFFF4500}.ToColor();
        public static Color Orchid = new WebColors{ColorName = "Orchid", ColorCode = 0xFFDA70D6}.ToColor();
        public static Color PaleGoldenrod = new WebColors{ColorName = "PaleGoldenrod", ColorCode = 0xFFEEE8AA}.ToColor();
        public static Color PaleGreen = new WebColors{ColorName = "PaleGreen", ColorCode = 0xFF98FB98}.ToColor();
        public static Color PaleTurquoise = new WebColors{ColorName = "PaleTurquoise", ColorCode = 0xFFAFEEEE}.ToColor();
        public static Color PaleVioletRed = new WebColors{ColorName = "PaleVioletRed", ColorCode = 0xFFDB7093}.ToColor();
        public static Color PapayaWhip = new WebColors{ColorName = "PapayaWhip", ColorCode = 0xFFFFEFD5}.ToColor();
        public static Color PeachPuff = new WebColors{ColorName = "PeachPuff", ColorCode = 0xFFFFDAB9}.ToColor();
        public static Color Peru = new WebColors{ColorName = "Peru", ColorCode = 0xFFCD853F}.ToColor();
        public static Color Pink = new WebColors{ColorName = "Pink", ColorCode = 0xFFFFC0CB}.ToColor();
        public static Color Plum = new WebColors{ColorName = "Plum", ColorCode = 0xFFDDA0DD}.ToColor();
        public static Color PowderBlue = new WebColors{ColorName = "PowderBlue", ColorCode = 0xFFB0E0E6}.ToColor();
        public static Color Purple = new WebColors{ColorName = "Purple", ColorCode = 0xFF800080}.ToColor();
        public static Color Red = new WebColors{ColorName = "Red", ColorCode = 0xFFFF0000}.ToColor();
        public static Color RosyBrown = new WebColors{ColorName = "RosyBrown", ColorCode = 0xFFBC8F8F}.ToColor();
        public static Color RoyalBlue = new WebColors{ColorName = "RoyalBlue", ColorCode = 0xFF4169E1}.ToColor();
        public static Color SaddleBrown = new WebColors{ColorName = "SaddleBrown", ColorCode = 0xFF8B4513}.ToColor();
        public static Color Salmon = new WebColors{ColorName = "Salmon", ColorCode = 0xFFFA8072}.ToColor();
        public static Color SandyBrown = new WebColors{ColorName = "SandyBrown", ColorCode = 0xFFF4A460}.ToColor();
        public static Color SeaGreen = new WebColors{ColorName = "SeaGreen", ColorCode = 0xFF2E8B57}.ToColor();
        public static Color SeaShell = new WebColors{ColorName = "SeaShell", ColorCode = 0xFFFFF5EE}.ToColor();
        public static Color Sienna = new WebColors{ColorName = "Sienna", ColorCode = 0xFFA0522D}.ToColor();
        public static Color Silver = new WebColors{ColorName = "Silver", ColorCode = 0xFFC0C0C0}.ToColor();
        public static Color SkyBlue = new WebColors{ColorName = "SkyBlue", ColorCode = 0xFF87CEEB}.ToColor();
        public static Color SlateBlue = new WebColors{ColorName = "SlateBlue", ColorCode = 0xFF6A5ACD}.ToColor();
        public static Color SlateGray = new WebColors{ColorName = "SlateGray", ColorCode = 0xFF708090}.ToColor();
        public static Color Snow = new WebColors{ColorName = "Snow", ColorCode = 0xFFFFFAFA}.ToColor();
        public static Color SpringGreen = new WebColors{ColorName = "SpringGreen", ColorCode = 0xFF00FF7F}.ToColor();
        public static Color SteelBlue = new WebColors{ColorName = "SteelBlue", ColorCode = 0xFF4682B4}.ToColor();
        public static Color Tan = new WebColors{ColorName = "Tan", ColorCode = 0xFFD2B48C}.ToColor();
        public static Color Teal = new WebColors{ColorName = "Teal", ColorCode = 0xFF008080}.ToColor();
        public static Color Thistle = new WebColors{ColorName = "Thistle", ColorCode = 0xFFD8BFD8}.ToColor();
        public static Color Tomato = new WebColors{ColorName = "Tomato", ColorCode = 0xFFFF6347}.ToColor();
        public static Color Transparent = new WebColors{ColorName = "Transparent", ColorCode = 0x00FFFFFF}.ToColor();
        public static Color Turquoise = new WebColors{ColorName = "Turquoise", ColorCode = 0xFF40E0D0}.ToColor();
        public static Color Violet = new WebColors{ColorName = "Violet", ColorCode = 0xFFEE82EE}.ToColor();
        public static Color Wheat = new WebColors{ColorName = "Wheat", ColorCode = 0xFFF5DEB3}.ToColor();
        public static Color White = new WebColors{ColorName = "White", ColorCode = 0xFFFFFFFF}.ToColor();
        public static Color WhiteSmoke = new WebColors{ColorName = "WhiteSmoke", ColorCode = 0xFFF5F5F5}.ToColor();
        public static Color Yellow = new WebColors{ColorName = "Yellow", ColorCode = 0xFFFFFF00}.ToColor();
        public static Color YellowGreen = new WebColors{ColorName = "YellowGreen", ColorCode = 0xFF9ACD32}.ToColor();

        public Color ToColor() 
        {
            var argb = this.ColorCode;

            return Color.FromArgb((byte)((argb & -16777216) >> 0x18), 
                                (byte)((argb & 0xff0000) >> 0x10), 
                                (byte)((argb & 0xff00) >> 8), 
                                (byte)(argb & 0xff)); 
        } 
    }
}
